import { NgModule } from "@angular/core";
import { CommonModule } from "@angular/common";
import { FilterPipe } from "./pipe/filter.pipe";
import { UnlessDirective } from "./directive/unless.directive";
import { HighlightDirective } from "./directive/highlight.directive";
import { ReValidator } from "./directive/re-validator.directive";
import { PasswordValidator } from "./directive/password-validator.directive";
import { CheckboxAllComponent } from "./component/checkbox-all.component";
import { NgZorroAntdModule } from "ng-zorro-antd";
import { FormsModule } from "@angular/forms";
import { DictPipe } from "./pipe/dict.pipe";
import { CNumberPipe } from "./pipe/cNumber.pipe";
import { DictValuePipe } from "./pipe/dict.value.pipe";
import { HttpProxyService } from "./service/http-proxy.service";

@NgModule({
  declarations: [
    FilterPipe,
    DictPipe,
    CNumberPipe,
    UnlessDirective,
    HighlightDirective,
    ReValidator,
    PasswordValidator,
    DictValuePipe,
    CheckboxAllComponent,
  ],
  imports: [CommonModule, NgZorroAntdModule, FormsModule],
  exports: [
    FilterPipe,
    DictPipe,
    CNumberPipe,
    UnlessDirective,
    HighlightDirective,
    ReValidator,
    PasswordValidator,
    DictValuePipe,
    CheckboxAllComponent,
  ],
  providers: [HttpProxyService],
})
export class SharedModule {}
